home *** CD-ROM | disk | FTP | other *** search
/ Personal Computer World 2009 February / PCWFEB09.iso / Software / Linux / Kubuntu 8.10 / kubuntu-8.10-desktop-i386.iso / casper / filesystem.squashfs / var / lib / dpkg / info / tzdata.config < prev    next >
Text File  |  2008-10-21  |  10KB  |  407 lines

  1. #! /bin/sh 
  2. set -e
  3.  
  4. . /usr/share/debconf/confmodule
  5. db_version 2.0
  6. db_capb backup
  7.  
  8. convert_timezone()
  9. {
  10.     case "$1" in
  11.     (right/*|posix/*)
  12.         convert_timezone "${1#*/}"
  13.         ;;
  14.     ("Africa/Asmera")
  15.         echo "Africa/Asmara"
  16.         ;;
  17.     ("America/Argentina/ComodRivadavia"|"America/Catamarca")
  18.         echo "America/Argentina/Catamarca"
  19.         ;;
  20.     ("America/Buenos_Aires")
  21.         echo "America/Argentina/Buenos_Aires"
  22.         ;;
  23.     ("America/Cordoba"|"America/Rosario")
  24.         echo "America/Argentina/Cordoba"
  25.         ;;
  26.     ("America/Jujuy")
  27.         echo "America/Argentina/Jujuy"
  28.         ;;
  29.     ("America/Mendoza")
  30.         echo "America/Argentina/Mendoza"
  31.         ;;
  32.     ("Antarctica/South_Pole")
  33.         echo "Antarctica/McMurdo"
  34.         ;;
  35.         "Asia/Ashkhabad")
  36.             echo "Asia/Ashgabat"
  37.             ;;
  38.         ("Asia/Calcutta")
  39.             echo "Asia/Kolkata"
  40.             ;;
  41.         "Asia/Chungking")
  42.             echo "Asia/Chongqing"
  43.             ;;
  44.         "Asia/Dacca")
  45.             echo "Asia/Dhaka"
  46.             ;;
  47.         "Asia/Macao")
  48.             echo "Asia/Macau"
  49.             ;;
  50.         ("Asia/Saigon")
  51.             echo "Asia/Ho_Chi_Minh"
  52.             ;;
  53.         "Asia/Thimbu")
  54.             echo "Asia/Thimphu"
  55.             ;;
  56.         "Asia/Ulan_Bator")
  57.             echo "Asia/Ulaanbaatar"
  58.             ;;
  59.         "Atlantic/Faeroe")
  60.             echo "Atlantic/Faroe"
  61.             ;;
  62.         "Australia/ACT" | "Australia/NSW")
  63.             echo "Australia/Sydney"
  64.             ;;
  65.         "Australia/LHI")
  66.             echo "Australia/Lord_Howe"
  67.             ;;
  68.         "Australia/North")
  69.             echo "Australia/Darwin"
  70.             ;;
  71.         "Australia/Queensland")
  72.             echo "Australia/Brisbane"
  73.             ;;
  74.         "Australia/South")
  75.             echo "Australia/Adelaide"
  76.             ;;
  77.         "Australia/Tasmania")
  78.             echo "Australia/Hobart"
  79.             ;;
  80.         "Australia/Victoria")
  81.             echo "Australia/Melbourne"
  82.             ;;
  83.         "Australia/West")
  84.             echo "Australia/Perth"
  85.             ;;
  86.         "Brazil/Acre")
  87.             echo "America/Rio_Branco"
  88.             ;;
  89.         "Brazil/DeNoronha")
  90.             echo "America/Noronha"
  91.             ;;
  92.         "Brazil/East")
  93.             echo "America/Sao_Paulo"
  94.             ;;
  95.         "Brazil/West")
  96.             echo "America/Manaus"
  97.             ;;
  98.         "Canada/Atlantic")
  99.             echo "America/Halifax"
  100.             ;;
  101.         "Canada/Central")
  102.             echo "America/Winnipeg"
  103.             ;;
  104.         "Canada/East-Saskatchewan")
  105.             echo "America/Regina"
  106.             ;;
  107.         "Canada/Eastern")
  108.             echo "America/Toronto"
  109.             ;;
  110.         "Canada/Mountain")
  111.             echo "America/Edmonton"
  112.             ;;
  113.         "Canada/Newfoundland")
  114.             echo "America/St_Johns"
  115.             ;;
  116.         "Canada/Pacific")
  117.             echo "America/Vancouver"
  118.             ;;
  119.         "Canada/Saskatchewan")
  120.             echo "America/Regina"
  121.             ;;
  122.         "Canada/Yukon")
  123.             echo "America/Whitehorse"
  124.             ;;
  125.         "CET")
  126.             echo "Europe/Paris"
  127.             ;;
  128.         "Chile/Continental")
  129.             echo "America/Santiago"
  130.             ;;
  131.         "Chile/EasterIsland")
  132.             echo "Pacific/Easter"
  133.             ;;
  134.         "CST6CDT")
  135.             echo "SystemV/CST6CDT"
  136.             ;;
  137.         "Cuba")
  138.             echo "America/Havana"
  139.             ;;
  140.         "EET")
  141.             echo "Europe/Helsinki"
  142.             ;;
  143.         "Egypt")
  144.             echo "Africa/Cairo"
  145.             ;;
  146.         "Eire")
  147.             echo "Europe/Dublin"
  148.             ;;
  149.         "EST")
  150.             echo "SystemV/EST5"
  151.             ;;
  152.         "EST5EDT")
  153.             echo "SystemV/EST5EDT"
  154.             ;;
  155.         "GB")
  156.             echo "Europe/London"
  157.             ;;
  158.         "GB-Eire")
  159.             echo "Europe/London"
  160.             ;;
  161.         "GMT")
  162.             echo "Etc/GMT"
  163.             ;;
  164.         "GMT0")
  165.             echo "Etc/GMT0"
  166.             ;;
  167.         "GMT-0")
  168.             echo "Etc/GMT-0"
  169.             ;;
  170.         "GMT+0")
  171.             echo "Etc/GMT+0"
  172.             ;;
  173.         "Greenwich")
  174.             echo "Etc/Greenwich"
  175.             ;;
  176.         "Hongkong")
  177.             echo "Asia/Hong_Kong"
  178.             ;;
  179.         "HST")
  180.             echo "Pacific/Honolulu"
  181.             ;;
  182.         "Iceland")
  183.             echo "Atlantic/Reykjavik"
  184.             ;;
  185.         "Iran")
  186.             echo "Asia/Tehran"
  187.             ;;
  188.         "Israel")
  189.             echo "Asia/Tel_Aviv"
  190.             ;;
  191.         "Jamaica")
  192.             echo "America/Jamaica"
  193.             ;;
  194.         "Japan")
  195.             echo "Asia/Tokyo"
  196.             ;;
  197.         "Kwajalein")
  198.             echo "Pacific/Kwajalein"
  199.             ;;
  200.         "Libya")
  201.             echo "Africa/Tripoli"
  202.             ;;
  203.         "MET")
  204.             echo "Europe/Paris"
  205.             ;;
  206.         "Mexico/BajaNorte")
  207.             echo "America/Tijuana"
  208.             ;;
  209.         "Mexico/BajaSur")
  210.             echo "America/Mazatlan"
  211.             ;;
  212.         "Mexico/General")
  213.             echo "America/Mexico_City"
  214.             ;;
  215.         "Mideast/Riyadh87")
  216.             echo "Asia/Riyadh87"
  217.             ;;
  218.         "Mideast/Riyadh88")
  219.             echo "Asia/Riyadh88"
  220.             ;;
  221.         "Mideast/Riyadh89")
  222.             echo "Asia/Riyadh89"
  223.             ;;
  224.         "MST")
  225.             echo "SystemV/MST7"
  226.             ;;
  227.         "MST7MDT")
  228.             echo "SystemV/MST7MDT"
  229.             ;;
  230.         "Navajo")
  231.             echo "America/Denver"
  232.             ;;
  233.         "NZ")
  234.             echo "Pacific/Auckland"
  235.             ;;
  236.         "NZ-CHAT")
  237.             echo "Pacific/Chatham"
  238.             ;;
  239.         "Poland")
  240.             echo "Europe/Warsaw"
  241.             ;;
  242.         "Portugal")
  243.             echo "Europe/Lisbon"
  244.             ;;
  245.         "PRC")
  246.             echo "Asia/Shanghai"
  247.             ;;
  248.         "PST8PDT")
  249.             echo "SystemV/PST8PDT"
  250.             ;;
  251.         "ROC")
  252.             echo "Asia/Taipei"
  253.             ;;
  254.         "ROK")
  255.             echo "Asia/Seoul"
  256.             ;;
  257.         "Singapore")
  258.             echo "Asia/Singapore"
  259.             ;;
  260.         "Turkey")
  261.             echo "Europe/Istanbul"
  262.             ;;
  263.         "UCT")
  264.             echo "Etc/UCT"
  265.             ;;
  266.         "Universal")
  267.             echo "Etc/UTC"
  268.             ;;
  269.         "US/Alaska")
  270.             echo "America/Anchorage"
  271.             ;;
  272.         "US/Aleutian")
  273.             echo "America/Adak"
  274.             ;;
  275.         "US/Arizona")
  276.             echo "America/Phoenix"
  277.             ;;
  278.         "US/Central")
  279.             echo "America/Chicago"
  280.             ;;
  281.         "US/East-Indiana")
  282.             echo "America/Indianapolis"
  283.             ;;
  284.         "US/Eastern")
  285.             echo "America/New_York"
  286.             ;;
  287.         "US/Hawaii")
  288.             echo "Pacific/Honolulu"
  289.             ;;
  290.         "US/Indiana-Starke")
  291.             echo "America/Indianapolis"
  292.             ;;
  293.         "US/Michigan")
  294.             echo "America/Detroit"
  295.             ;;
  296.         "US/Mountain")
  297.             echo "America/Denver"
  298.             ;;
  299.         "US/Pacific")
  300.             echo "America/Los_Angeles"
  301.             ;;
  302.         "US/Samoa")
  303.             echo "Pacific/Pago_Pago"
  304.             ;;
  305.         "UTC")
  306.             echo "Etc/UTC"
  307.             ;;
  308.         "WET")
  309.             echo "Europe/Lisbon"
  310.             ;;
  311.         "W-SU")
  312.             echo "Europe/Moscow"
  313.             ;;
  314.         "Zulu")
  315.             echo "Etc/UTC"
  316.             ;;
  317.         *)
  318.             echo "$1"
  319.             ;;
  320.     esac
  321. }
  322.  
  323. # If /etc/localtime is a link, update /etc/timezone
  324. if [ -L /etc/localtime ] ; then
  325.     TIMEZONE="$(readlink /etc/localtime)"
  326.     TIMEZONE="${TIMEZONE#/usr/share/zoneinfo/}"
  327.     if [ -f "/usr/share/zoneinfo/$TIMEZONE" ] ; then
  328.         echo ${TIMEZONE} > /etc/timezone
  329.     fi
  330. fi
  331.  
  332. # Read /etc/timezone
  333. if [ -e /etc/timezone ]; then
  334.     TIMEZONE="$(head -n 1 /etc/timezone)"
  335.     TIMEZONE="${TIMEZONE%% *}"
  336.     TIMEZONE="${TIMEZONE##/}"
  337.     TIMEZONE="${TIMEZONE%%/}"
  338.     TIMEZONE="$(convert_timezone $TIMEZONE)"
  339.     if [ -f "/usr/share/zoneinfo/$TIMEZONE" ] ; then
  340.         AREA="${TIMEZONE%%/*}"
  341.         ZONE="${TIMEZONE#*/}"
  342.     else
  343.         rm -f /etc/timezone
  344.     fi
  345. fi
  346.  
  347. # The timezone is already configured
  348. if [ -e /etc/timezone ] && [ -e /etc/localtime ] ; then
  349.     # Don't ask the user, except if he/she explicitely asked that
  350.     if [ -z "$DEBCONF_RECONFIGURE" ] ; then
  351.         db_fset tzdata/Areas seen true
  352.         db_fset tzdata/Zones/$AREA seen true
  353.     fi
  354. # The timezone has never been configured or is falsely configured
  355. elif ! [ -e /etc/localtime ] || [ -n "$DEBCONF_RECONFIGURE" ] ; then
  356.     if [ -z "$AREA" ] || [ -z "$ZONE" ] ; then
  357.         AREA="Etc"
  358.         ZONE="UTC"
  359.         echo "Etc/UTC" > /etc/timezone
  360.     fi
  361.     db_fset tzdata/Areas seen false
  362.     db_fset tzdata/Zones/$AREA seen false
  363. # The user want to handle the timezone by him/herself
  364. else
  365.     exit 0
  366. fi
  367.  
  368. # Initializes debconf default values from the ones found in
  369. # configuration files
  370. db_set tzdata/Areas "$AREA"
  371. db_set tzdata/Zones/$AREA "$ZONE"
  372.  
  373. STATE=1
  374. while [ "$STATE" -ge 0 ]; do
  375.     case "$STATE" in
  376.     0)
  377.         # The user has cancel the timezone change, reset the debconf
  378.         # values to the initial one.
  379.         db_set tzdata/Areas "$AREA"
  380.         db_set tzdata/Zones/$AREA "$ZONE"
  381.         break
  382.         ;;
  383.     1)
  384.         # Ask the user of the Area
  385.         db_input high tzdata/Areas || true
  386.         ;;
  387.     2)
  388.         # Ask the user of the Zone
  389.         db_get tzdata/Areas || RET=Etc
  390.         db_input high tzdata/Zones/$RET || true
  391.         ;;
  392.     *)
  393.         break
  394.         ;;
  395.     esac
  396.     if db_go; then
  397.         STATE=$(($STATE + 1))
  398.     else
  399.         STATE=$(($STATE - 1))
  400.     fi
  401. done
  402.  
  403.  
  404.  
  405.  
  406. exit 0
  407.